package models

// Result 统一返回结果结构体
type Result struct {
	Success bool        `json:"success"`
	Code    int         `json:"code"`    // 状态码：0-成功，非0-错误
	Message string      `json:"message"` // 提示信息
	Data    interface{} `json:"data"`    // 业务数据（成功时返回）
}

// 常用状态码（可根据业务扩展）
const (
	SuccessCode     = 0 // 成功
	ErrorCode       = 1 // 通用错误
	ParamsErrorCode = 2 // 参数错误
	AuthErrorCode   = 3 // 认证错误
)

func ResultSuccess(data interface{}) *Result {
	return &Result{
		Success: true,
		Code:    SuccessCode,
		Message: "success",
		Data:    data,
	}
}

// Fail 返回错误结果
func ResultFail(code int, message string) *Result {
	return &Result{
		Code:    code,
		Message: message,
		Data:    nil,
	}
}
